复合查询 Sample详情
最后更新时间:2019年7月5日
复合条件查询,是属性条件与空间条件结合应用的查询方式,根据选择图层、字段、关键字,结合空间范围条件,对图层要素进行查询并显示查询结果。通过结果要素可获取其空间信息与属性信息,根据应用需求解析结果,并选择适合的方式展现。
实现方法与空间查询、属性查询一致,只是在设置查询条件时,需要同时设置空间查询范围queryBound和属性查询条件whereClause。
//查询范围对象 MGSQueryBound *queryBound=[[MGSQueryBound alloc] initWithPoint:dot]; //设置查询范围 [featureQuery setQueryBound:queryBound]; //设置空间过滤条件(精确相交) [featureQuery setSpatialRelationship:SpatialRelOverlap];
//属性条件(模糊查询) [featureQuery setWhereClause:@"Name LIKE '%公园%'"];
交互式查询
交互查询,即以用户绘制的空间范围为条件,进行要素的查询操作,在实际项目中应用非常广泛。
从实现原理上说,交互式查询可以分为交互式图形绘制、要素查询两个阶段。用户在地图上绘制任意图形,然后获取其空间范围,作为空间查询的条件,进而实现查询效果。
从接口实现上来说,是地图手势事件操作、图形绘制、要素查询部分功能模块的结合,可以参考对应模块的开发指南文档。